#ifndef POINT_H
#define POINT_H

struct Point{
		Point();
		Point(double, double, double);
		Point(const Point&);
		~Point();

		Point operator-(const Point&);
		Point operator+(const Point&);
		Point operator*(double);
        bool operator==(const Point&);

		double length();
		Point normalization();
		double dotProduct(Point);
		double scalarTripleProduct(Point, Point);
		Point crossProduct(Point);

		void print() const;
		double *intoVector();

		double x;
		double y;
		double z;
};

double solidAngle(Point, Point, Point, Point);
bool isCollinear(Point, Point);
bool isCoplanar(Point, Point, Point, Point);//checando se o ultimo ponto é coplanar a face que eé feita pelos 3 primeiros

#endif
